<!DOCTYPE html>
<html>

<head>
	<meta charset="UTF-8" />
	<title>姓名案例_methods实现</title>
	<!-- 引入Vue -->
	<script type="text/javascript" src="../js/vue.js"></script>
</head>

<body>
	<!-- 准备好一个容器-->
	<div id="root">
		姓：<input type="text" v-model="firstName"> <br /><br />
		名：<input type="text" v-model="lastName"> <br /><br />
		<!-- {{fullName()}} 绑定methods的fullName() -->
		<!-- methods没有缓存 -->
		全名：<span>{{fullName()}}</span>
	</div>
</body>

<script type="text/javascript">
	Vue.config.productionTip = false //阻止 vue 在启动时生成生产提示。

	// data中的数据发生变化,vue一定会重新解析模板,只有解析模板才能知道哪些位置用到了相关数据.把这些数据更新,
	// 解析模板的时候,只要遇到插值语法里面写方法,这个方法一定会重新调用

	new Vue({
		el: '#root',
		data: {
			firstName: '张',
			lastName: '三'
		},
		methods: {
			fullName() {
				// console.log('@', this) //this是当前实例对象 vm
				console.log('@---fullName');
				// return this.firstName.slice(0, 3) + '-' + this.lastName
				return this.firstName + '-' + this.lastName
			}
		},
	})
</script>

</html>